<!DOCTYPE html>
<html>
    <head>
        <title>CSSOM Parsing Test: @font-face rules toString() as valid interfaces</title>
        <link rel="author" title="Paul Irish" href="mailto:paul.irish@gmail.com">
        <link rel="reviewer" title="Ms2ger" href="mailto:ms2ger@gmail.com"> <!-- 2012-06-17 -->
        <link rel="help" href="https://drafts.csswg.org/css-fonts-4/#om-fontface">

        <meta name="flags" content="dom">

        <script src="/resources/testharness.js"></script>
        <script src="/resources/testharnessreport.js"></script>
    </head>

    <body>
        <div id="log"></div>


        <style id="teststyles">
        @font-face {
            src: url(http://foo/bar/font.ttf);
        }
        @font-face {
            font-family: STIXGeneral;
            src: local(STIXGeneral), url(/stixfonts/STIXGeneral.otf);
            unicode-range: U+000-49F, U+2000-27FF, U+2900-2BFF, U+1D400-1D7FF;
        }
        @font-face {
            font-family: MainText;
            src: url(http://example.com/font.ttf);
            font-variant: oldstyle-nums proportional-nums styleset(1,3);
        }

       @font-face {
            font-family: BodyText;
            src: local("HiraMaruPro-W4");
            font-variant: proportional-width;
            font-feature-settings: "ital"; /* Latin italics within CJK text feature */
        }
        </style>


        <script>
            var validRules = document.getElementById('teststyles').sheet.cssRules;

            test(function(){
                for (var i = 0; i < validRules.length; ++i) {
                    assert_equals(validRules.item(i).toString(), '[object CSSFontFaceRule]');
                }
            }, '@font-face declarations are instances of CSSFontFaceRule')


            test(function(){
                for (var i = 0; i < validRules.length; ++i) {
                    assert_equals(validRules.item(i).style.toString(), '[object CSSStyleDeclaration]');
                }
            }, 'The style attribute must return a CSSStyleDeclaration block')

        </script>


    </body>
</html>
